
{
	double swap2Vars = f12;
	f12 = f5;
	f5 = swap2Vars;
}

{
	double tempFollow3Var = f9;
	f9 = f12;
	f12 = f14;
	f14 = tempFollow3Var;
}

f6 += f3;
if(1 < f6){
	f6 -= 2;
}else if(f6 < -1){
	f6 += 2;
}

f1 += f6;
if(1 < f1){
	f1 -= 2;
}else if(f1 < -1){
	f1 += 2;
}

f5 -= f16;
if(1 < f5){
	f5 -= 2;
}else if(f5 < -1){
	f5 += 2;
}





if(0 < f1){ 
	if(f0 < 0){ f0 -= 2*f1*f0; }
}else{ 
	if(0 < f0){ f0 -= 2*f1*f0; }
}

f15 -= f16;
if(1 < f15){
	f15 -= 2;
}else if(f15 < -1){
	f15 += 2;
}


{
	double tempFollow3Var = f13;
	f13 = f7;
	f7 = f4;
	f4 = tempFollow3Var;
}
f4 *= f3;




if(0 < f1){ 
	if(f8 < 0){ f8 -= 2*f1*f8; }
}else{ 
	if(0 < f8){ f8 -= 2*f1*f8; }
}

f11 -= f6;
if(1 < f11){
	f11 -= 2;
}else if(f11 < -1){
	f11 += 2;
}


f2 -= f6;
if(1 < f2){
	f2 -= 2;
}else if(f2 < -1){
	f2 += 2;
}


f10 = Math.max(f14,f16);



if(0 < f2){
	f6 *= 1 - f2;
	f6 += 0 < f8 ? f1 : f13;
}else{ 
	if(0 < f8){
		f1 *= 1 - (-f2);
		f1 += (-f2)*f6;
	}else{
		f13 *= 1 - (-f2);
		f13 += (-f2)*f6;
	}
}

f15 = Math.max(f2,f16);

{
	double swap2Vars = f15;
	f15 = f3;
	f3 = swap2Vars;
}

f11 = Math.max(f2,f16);
f13 *= f16;



if(0 < f2){
	f6 *= 1 - f2;
	f6 += 0 < f16 ? f9 : f13;
}else{ 
	if(0 < f16){
		f9 *= 1 - (-f2);
		f9 += (-f2)*f6;
	}else{
		f13 *= 1 - (-f2);
		f13 += (-f2)*f6;
	}
}

f10 -= f16;
if(1 < f10){
	f10 -= 2;
}else if(f10 < -1){
	f10 += 2;
}


{
	double swap2Vars = f3;
	f3 = f5;
	f5 = swap2Vars;
}

f7 = Math.max(f2,f16);

f13 = Math.max(f2,f16);

f12 = Math.max(f2,f16);

f16 = Math.max(f2,f6);

f14 = Math.max(f10,f6);

f16 = Math.max(f4,f6);
f16 *= f3;

f16 = Math.max(f10,f6);

f2 = Math.max(f10,f16);




if(0 < f7){ 
	if(f0 < 0){ f0 -= 2*f7*f0; }
}else{ 
	if(0 < f0){ f0 -= 2*f7*f0; }
}
f13 *= f5;